package com.zzyl.service;

import com.zzyl.base.PageResponse;
import com.zzyl.base.ResponseResult;
import com.zzyl.dto.DeviceDataPageReqDto;
import com.zzyl.vo.DeviceDataGraphVo;
import com.zzyl.vo.DeviceDataVo;
import org.apache.ibatis.annotations.Param;

import java.time.LocalDateTime;
import java.util.List;

public interface DeviceDataService {

    /**
     * 分页条件查询
     * @param deviceDataPageReqDto
     * @return
     */
    public PageResponse<DeviceDataVo> selectByPage(DeviceDataPageReqDto deviceDataPageReqDto);

    /**
     * 按照天查询设备详细数据
     * @param iotId
     * @param functionId
     * @param startTime
     * @param endTime
     * @return
     */
    List<DeviceDataGraphVo> queryDeviceDataByDay(
            String iotId, String functionId,
            Long startTime, Long endTime
    );

    /**
     * 按照周查询设备详细数据
     * @param iotId
     * @param functionId
     * @param startTime
     * @param endTime
     * @return
     */
    List<DeviceDataGraphVo> queryDeviceDataByWeek(
            String iotId, String functionId,
            Long startTime, Long endTime
    );
}
